/**
 * 微信相关配置信息
 */
export default {
  // 公众号配置
  official: {
    appId: 'wxee39deb8d9fd37e3', // 公众号AppID
    appSecret: 'b3ada6ba219045d12a7d15538080a14a', // 公众号AppSecret (注意: 仅在服务端使用)
    token: '11224488AADDEE', // 令牌(Token)
    encodingAESKey: 'QgVQTvRrJHtKVTYGC1rruJ9CthAiagE5o5hjIg20zsL', // 消息加密密钥
  },
  
  // 授权回调页面
  redirectUri: {
    // 网页授权回调页面，需配置到微信公众平台
    // 注意：这里使用相对路径，实际使用时会与当前域名拼接
    h5: '/pages/login/login',
  },
  
  // JSSDK配置
  jssdk: {
    debug: false, // 是否开启调试模式
    // 需要使用的JS接口列表
    jsApiList: [
      'updateAppMessageShareData', // 分享到朋友
      'updateTimelineShareData', // 分享到朋友圈
      'onMenuShareTimeline', // 旧的分享到朋友圈接口
      'onMenuShareAppMessage', // 旧的分享到朋友接口
      'chooseImage', // 拍照或从手机相册中选图
      'previewImage', // 预览图片
      'uploadImage', // 上传图片
      'downloadImage', // 下载图片
      'getLocalImgData', // 获取本地图片base64数据
      'startRecord', // 开始录音
      'stopRecord', // 停止录音
      'playVoice', // 播放语音
      'pauseVoice', // 暂停播放
      'stopVoice', // 停止播放
      'uploadVoice', // 上传语音
      'downloadVoice', // 下载语音
      'translateVoice', // 识别音频并返回识别结果
      'getNetworkType', // 获取网络状态
      'openLocation', // 使用微信内置地图查看位置
      'getLocation', // 获取地理位置
      'hideOptionMenu', // 隐藏右上角菜单
      'showOptionMenu', // 显示右上角菜单
      'closeWindow', // 关闭当前网页窗口
      'scanQRCode', // 扫描二维码
    ],
    // 需要使用的开放标签列表
    openTagList: [
      'wx-open-launch-app', // 打开APP
      'wx-open-launch-weapp', // 打开小程序
    ]
  },
  
  // 用于检测微信环境
  isWechatBrowser(userAgent) {
    return /MicroMessenger/i.test(userAgent || navigator.userAgent);
  },
  
  // 构建网页授权URL
  buildAuthUrl({appId, redirectUri, scope = 'snsapi_userinfo', state = ''}) {
    if (!appId) {
      throw new Error('appId不能为空');
    }
    
    if (!redirectUri) {
      throw new Error('redirectUri不能为空');
    }
    
    // 确保redirectUri已编码
    const encodedRedirectUri = encodeURIComponent(redirectUri);
    
    // 构建授权URL
    return `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appId}&redirect_uri=${encodedRedirectUri}&response_type=code&scope=${scope}&state=${state}#wechat_redirect`;
  }
}; 